一、何謂MQTT
訊息佇列遙測傳輸(Message Queuing Telemetry Transport),是一種輕量級的協定,傳輸層為TCP(P1883),其運作模式不同於前者介紹HTTP與CoAP的主從式(client-server)架構,而使用發布訂閱(publisher/subscriber)的模式。
二、CoAP請求方法
傳送資料的一邊是發布者(Publisher),接收資料的一邊則是訂閱者(Client),中間的伺服器則為代理人(Broker)。
訂閱者需要告知代理人想要訂閱的資訊,每當發布者傳入新訊息時,代理人就會依照訂閱著的訂閱將資料傳送給所有訂閱者。中間的伺服器可儲存發布者的訊息,在發布者中斷連線的情況下,提供訂閱者最近更新的訊息。由於兩個用戶端之間(Publisher-Client)有伺服器當作中繼站,所以兩邊並不需要知道彼此的IP位址。
三、MQTT服務品質(Quality of Service,QoS)
At Most Once:訊息可能丟失但絕對不會重複傳輸,適合應用在環境感測。
At least Once:訊息絕對不會丟失單可能會重複傳輸。
Exactly Once:訊息會被傳輸一次僅一次,適合在計費系統。
參考資料:
1.https://www.youtube.com/watch?v=IbTUVFdD_bI&list=PLdSWxzxDhd3HcpDDa8svbBrD9qRQj39bW&index=2
2.https://swf.com.tw/?p=1002